Language and IDE Modularization, Extension and Composition with MPS

نویسنده

  • Markus Voelter
چکیده

Language modularization, extension and composition is an important building block for working efficiently with DSLs. Historically, this has been a challenge because many grammar formalisms are not closed under composition, hence syntactic composition of languages is challenging. Composing static and dynamic semantics can also be hard, at least in the general case. Finally, a lot of existing work does not consider IDEs for the composed and extended languages. In this paper, I will show how the projectional language workbench JetBrains MPS solves most of these issues in a practically usable way. The main part of the paper is an extensive example that shows the various kinds of extension and modularization. The last section contains an evaluation that identifies the strong and weak aspects of modularization, composition and extension in MPS, and suggests a couple of improvements.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Language Modularization and Composition with Projectional Language Workbenches illustrated with MPS

The language community has had a discussion about different styles of languages for a long time: big languages with many specific concepts (ABAP, Cobol), or small languages with few, but very powerful and orthogonal concepts (Lisp, Smalltalk)? With the advent of projectional language workbenches a new class of language becomes possible that can combine the best of both approaches: modular langu...

متن کامل

mbeddr: an Extensible MPS-based Programming Language and IDE for Embedded Systems

While the C programming language provides very good support for writing efficient, low-level code, it does not offer adequate means for defining higher-level abstractions relevant to embedded software. In this article we present the MPS-based mbeddr technology stack that supports extension of C with constructs adequate for embedded systems. In mbeddr, efficient low-level programs can be written...

متن کامل

Event-Specific Software Composition in Context-Oriented Programming

Context-oriented programming (COP) introduces dedicated abstractions for the modularization and dynamic composition of crosscutting context-specific functionality. While existing COP languages offer constructs for control-flow specific composition, they do not yet consider the explicit representation of event-specific context-dependent behavior, for which we observe two distinguishing propertie...

متن کامل

An Overview on XML Initiatives to Bring Modularization to Web Application Development

The increasing growth in size and complexity of web applications requires a systematic way to web application development that is able to incorporate the stringent demands imposed on both the development and maintenance of these systems. In the past a common strategy to alleviate these problems has been modularization. This paper outlines distinct initiatives within the XML research that attemp...

متن کامل

Towards User-Friendly Projectional Editors

Today’s challenges for language development include language extension and composition, as well as the use of diverse notations. A promising approach is projectional editing, a technique to directly manipulate the abstract syntax tree of a program, without relying on parsers. Its potential lies in the ability to combine diverse notational styles – such as text, symbols, tables, and graphics – a...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011